package com.eonmind.vip.service;

import com.eonmind.common.contract.data.response.ResponseEntity;
import com.eonmind.user.contract.dto.UserInfoData;
import com.eonmind.vip.dto.ClockDto;

import java.util.List;

public interface ClockService {

    /**
      * @Author 逆飞的流星
      * @Description 用户签到
      * @Date 16:26 2025/5/13
      **/
    ResponseEntity<Integer> userClock(UserInfoData userInfoData);

    /**
      * @Author 逆飞的流星
      * @Description 查看用户当前连续签到时间
      * @Date 16:26 2025/5/13
      **/
    ResponseEntity<Integer> getConsecutiveClockInDays(UserInfoData userInfoData);

    /**
     * @Author 逆飞的流星
     * @Description 获取本月签到记录
     * @Date 16:45 2025/5/13
     **/
    ResponseEntity<List<ClockDto.ClockRecordsResponse>> getMonthlyClockInRecords(UserInfoData userInfoData);

    /**
      * @Author 逆飞的流星
      * @Description 查询用户当天是否已更新
      * @Date 10:01 2025/5/14
      **/
    ResponseEntity<Boolean> isUserClocked(UserInfoData userInfoData);

}
